Nonlinear proportional integral controller

ABSTRACT

A method and apparatus for controlling a hydraulic manipulator defines a position error signal (θ e ), defining a first control signal (U P , U PD ) based on the position error (θ e ) and generating an improved position error integral signal (θ I ) based on a product of the position error (θ e ) integral signal and a velocity factor F V . The velocity factor F V  is based on a derivative of the position error (θ e ) and a nonlinear function. An integral control signal (U I ) is produced based on the improved position error integral signal (θ I ) and is combined with the first signal (U P , U PD ) to provide an output control signal U to control the manipulator. The invention also preferably includes a system to further reduce overshoot by further modifying the position error signal (θ e ) depending on whether the velocity and acceleration of position are in the same direction and to accommodate stiction at deadband areas of the control by determining a stick induced velocity error signal (θ e   stiction ) and modifying the control signal when required.

FIELD OF INVENTION

The present invention relates to a controller, more particularly, thepresent invention relates to an accurate position control system forhydraulically-actuated manipulators.

BACKGROUND OF THE INVENTION

Some of the more difficult to master problems encountered in controllingindustrial hydraulic manipulators include accurate regulating andtracking movement of the end point preventing overshoot, wherein theendpoint travels beyond its intended destination, the inherentresistance to movement of the components of the system generallyreferred to herein as "stiction", and deadband nonlinearities, withinwhich the control signal cannot produce any movement. These actions inhydraulic manipulators make control of such equipment significantly moredifficult than electrically actuated and operated manipulators. Inparticular, hydraulic systems utilize valves to control the fluid flowto the driving cylinders and thus, must contend with the movementrequirements for the valve to obtain the desired flow to the drivecylinders. Thus, a hydraulic position controller must contend with manynonlinearities and nonidealities including flow deadband and stiction,all of which are present in hydraulic systems. Examples of such systemsare heavy-duty industrial excavator-based machines. The actuationsystems in these machines are highly coupled and nonlinear. Also, thesemachines constantly interact with the environment. Impedancecontrol-type systems appear to be very desirable to handle automaticmovements and environmental interactions in each system.

Examples of impedance control-type systems as applied to electricallyoperated devices described in "Model Reference Impedance Control ofRobotic Manipulators" by Field, G. and Stepanenko, Y. published inProceedings--BEE Pacific Rim Conference, 1993, pp 614-617; "ImpedanceControl: An Approach to Manipulation, Parts I-III" by Hogan, N. in ASMEJournal of Dynamic Systems, Measurement and Control, 1985, Vol. 107, pp1-24; "Application of Semi-Automatic Robot Technology on Hot-LineMaintenance Work" by Nakashima, M., Yakabe, H., Maruyama, Y., Yano, K.Morita, K. and Nakagaki, H. in Proceedings--IEEE Conference on Roboticsand Automation, 1995, pp 843-850; "On the Implementation and Performanceof Impedance Control on Position Controlled Robots" by Pelletier, M. andDoyon, M in Proceedings--IEEE Conference on Robotics and Automation,1994, pp 1228-1233.

U.S. Pat. No. 4,727,303 issued to Morse et al. describes a specificsystem for applying an offset signal to compensate for steady-stateerror in controlling electrically-actuated robot. Morse et al.'s systemworks by resetting the error integral at high speeds and therefore workswell for step changes in setpoint only. When high-speed trajectorytracking is required, Morse et al.'s system reduces the control actionto a simple proportional gain; thus, is not effective in ensuring propertracking of the end-point along selected trajectory. Further, it doesnot compensate for velocity reversals.

Other U.S. patents disclosing various control circuits include U.S. Pat.No. 4,743,822 issued May 16, 1988 to Futami et at., U.S. Pat. No.4,860,215 issued Jun. 7, 1988 to Seraji and U.S. Pat. No. 4,749,928issued Aug. 22, 1989 to Dautremay et at.

Generally, in an electrically operated robot, motor current is used tocontrol joint forces (torque) which is easily done since the motorcurrent and motor torque are directly proportionally related. Thisrelationship is obviously not present in hydraulically actuatedequipment. For this reason, position-based impedance control is highlydesirable in hydraulic systems.

BRIEF DESCRIPTION OF THE PRESENT INVENTION

It is Applicants' intention to provide an implementation of impedancecontrol that does not require controlled actuator torque in the form ofa position-based impedance control. The position-based impedance controlis actually a position controller nested within a force feedback loop.The success of the scheme, however, relies on the efficacy of its nestedposition controller. When in contact with an environment, the forces atthe implement will be very dependent on small changes in its position.The present invention permits the use of position-based impedancecontrol on industrial hydraulic manipulators.

It is an object of the present invention to provide a robust positioncontrol system for a hydraulic manipulator or robot to accurately andquickly position a robotic arm. It is a further object of the presentinvention to provide a control system that is capable of both goodtracking and regulation of the arm movement and helps to overcome theproblem of stiction and to provide the required control signals quicklyand retain all these properties for both large and small changes in setpoints.

Broadly, the present invention relates to an improved controller for ahydraulic manipulator comprising means for generating a position errorsignal (θ_(e)), proportional (proportional-derivative) controller meansto define a first control signal U_(P) (U_(PD)), means for determining avelocity factor F_(V) based on a derivative of said position error(θ_(e)) and a nonlinear function, means for generating an improvedposition error integral signal (θ_(I)) based on the product of saidposition error integral and said velocity factor F_(V), means to providean integral control signal (U_(I)) based on said improved position errorintegral signal (θ_(e)) and means for combining said integral controlsignal (U_(I)) with said first signal (U_(P), U_(PD)) to provide anoutput control signal U to control said manipulator.

Broadly, the present invention also relates to an improved method ofcontrolling a hydraulic manipulator comprising defining a position errorsignal (θ_(e)), defining a first control signal U_(P) (U_(PD)) based onsaid position error, θ_(e), (and its derivative generating an improvedposition error integral signal (θ_(I)) base on a product of saidposition error signal (θ_(e)) integral and a velocity factor F_(V), saidvelocity factor F_(V) being based on a derivative of said position error(θ_(I)) and a nonlinear function, providing integral control signal(U_(I)) based on said improved position error integral signal (θ_(I))and combining said integral control signal (U_(I)) with said firstsignal (U_(P) or U_(PD)) to provide an output control signal U tocontrol said manipulator.

Preferably, said means for generating a position error signal (θ_(e))includes, means to input a desired position (θ_(d)), means forgenerating a position error signal (θ_(e)) based on said desiredposition (θ_(d) a) and a then current actual position of saidmanipulator (θ_(a)).

Preferably, the position error (θ_(e)) is modified based on a comparisonof directions of first and second derivatives of said desired position(θ_(d)) and the value of the position error signal (θ_(e)) modified onlywhen the first and second derivatives have different signs by adding amodifying signal (θ_(G)) to the position error signal (θ_(e)) to providea modified position error signal (θ_(m)) that is used to replace saidposition error signal (θ_(e)) in defining said integral control signal(U_(I)).

Preferably said nonlinear function, F_(V), will be ##EQU1## where: α=aconstant having a value of at least 8 degree² /second² (deg.² /s²) forrevolute joints and 0.02 m² /s² for prismatic joints; generally may beobtained from the following relation: ##EQU2## where: α_(max) =at least8000 deg.² /s² for revolute joints and at least 20 m² /s² for prismaticjoints

θ_(max) =about 10 deg./s (for revolute joints) or 0.2 m/s (for prismaticjoints) for most heavy-duty hydraulic applications

Preferably, said control will further include determining of stictionvelocity error (θ_(e) ^(stiction)) based on desired velocity (θ_(d))derived from a derivative of said desired position (θ_(d)), and actualvelocity (θ_(a)) derived from a derivative of said actual position(θ_(a)), determining whether said stiction velocity error (θ_(e)^(stiction)) is within a selected range, and substituting an outputsignal U_(L) or U_(U) for control signal U.

Preferably, said determining stiction velocity error (θ_(e) ^(stiction))is based on the function ##EQU3## where: β=shape factor having a valueof between 5 and 500 for many heavy-duty hydraulic applications

BRIEF DESCRIPTION OF THE DRAWINGS

Further features, objects and advantages will be evident from thefollowing detailed description of the preferred embodiments of thepresent invention taken in conjunction with the accompanying drawings inwhich;

FIG. 1 is a schematic illustration of a control system constructed inaccordance with the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

The present invention as illustrated in FIG. 1 has been shown as appliedto a simple position proportional control system generating an outputU_(P), which is modified by a novel integral control signal U_(I) togenerate the output signal U that controls the actuator. It will beapparent that the proportional control signal U_(P) may be based solelyon position error (θ_(e)), but may also be based on velocity (linear orangular) error or a combination of position and velocity errors in aknown manner to provide a U_(PD) (proportional-derivative) signal asopposed to a U_(P) (proportional) signal. Thus, the signal shown in FIG.1 carded in line 12 may either be a U_(P) or a U_(PD) signal.

The control of the present invention includes three main modificationsto conventional controls to produce a better and robust output signal U.

One of these modifications is the system contained within the dot-dashlines 14 simply multiplies the position error (output from summing node32) by a velocity-error-varying factor F_(V) (see FIG. 1) which isdetermined based on a nonlinear function applied in each controliteration. This factor F_(V) is unity (1) at 0 velocity error (θ_(e))and approaches zero (0) as the velocity error signal increases. The somodified PI controller, which will be described hereinbelow, tends toeliminate the problems of actuator saturation and integral windup andallows the use of larger integral gains (K_(I)) thereby improving bothregulating and tracking abilities of the system over a wide range ofinputs.

The basic system plus the velocity-error-varying factor, as aboveindicated, is contained within the dot-dash line 14 and provides for aninput of desired position θ_(d) in line 16 which is delivered to thesubtractor 18 where the actual position θ_(a) is subtracted therefrom togenerate the position error signal θ_(c) in line 20.

The actual position θ_(a) is sensed in the actuator indicatedschematically at point 22 and the actual position θ_(a) is delivered tothe subtractor 18 via line 24.

The signal in line 20 is processed in a proportional controller 26 toprovide an output signal U_(P), in line 12 which as above described mayalso be a U_(PD) signal.

In a conventional integral controller herewith called I controller, theposition error θ_(e) is carried by a line 30 to an adder 32, i.e.normally, the adder 34 to be described below and which is outside thebox 14 would not be present. However, for the function of the presentinvention and a further modification of the system, it is included.

To carry on with the description of a conventional integral controller,the error signal θ_(e) would normally be added to the previous positionerror signal in line 36 to generate an output signal that would then bemodified in the proportion of controller 38 to generate an integralsignal U_(I) in line 40. This U_(I) is then added to the signal U_(P),(or U_(PD)) in line 12 in the adder 42 to generate the control signal Uin line 44 and this signal is then delivered to the hydraulic actuator46 and controls the operation of the actuator.

With the present invention, the position error θ_(e) in line 30 isprocessed by first obtaining the derivative thereof as indicated at 48to provide velocity error signal θ_(e) in line 50 and is then processedusing a nonlinear function which generates a velocity error factorF_(V), which, in the illustrated arrangement, is based on the formula##EQU4## where: α=a constant having a value of at least 8 deg² /s² forrevolute joints and 0.02 m² /s² for prismatic joints, or preferablyfollows the following relation: ##EQU5## where: α_(max) =at least 8000deg.² /s² for most heavy-duty hydraulic applications with revolutejoints, and at least 20 m² /s² for most heavy-duty hydraulicapplications with prismatic joints

θ_(e) =velocity error base on the position error θ_(e)

|θ_(d) |=absolute desired velocity

θ_(max) =a maximum set-point for velocity and can be 10 deg./s for mostheavy duty hydraulic applications having revolute joint, or 0.2 m/s forprismatic joint

The above values, however, are not absolute and are normally determinedempirically and are based on the intended application.

The so processed velocity error signal θ_(e) is carried via a line 52 tomultiplier 54 where it is multiplied with the output from the adder 32to produce an improved position error integral signal θ_(I) that iscarried via line 56 to the proportional modifier 38 when the switch 58is in the position connecting Terminal 1 and Terminal 2. If the devicefor compensating stiction is not used as will be described below, theTerminals 1 and 2 may be directly interconnected and the switch 58eliminated. However, for best operation of the system, the stictionerror control portion will be included.

It will be apparent that the modified system nonlinear function asapplied indicated at 51 to provide factor F_(V) that is carded via line52 to the multiplier 54, where it is multiplied with the output fromadder 32 to provide the improved error integral signal θ_(I) and therebysignificantly changes in the signal delivered to the proportional block38.

In a typical hydraulic manipulator (e.g. a Unimate MK-II industrialrobot) the factor α must have a value of at least 8 deg.² /s² for eachrevolute joint, however, if the value for α is small, the system becomesvery sensitive to velocity error and produces control signals with someoscillation during tracking. If the value for α is selected very large,the step input response of the system may deteriorate somewhat. It isthus preferred to determine α based on equation (2) to ensure betteroperation of the system in both regulating and tracking responses. Finemovement of the equipment is also aided by linking α to set-pointvelocity θ_(d) and tuning α on-line, using a selected velocity, θ_(max)and a value of α_(max) in equation (2)

This use of formula (2) was found to reduce the overshoot observed invery small (within a couple of encoder resolutions of error) changes insetpoint position.

Although the above modification reduces the amount of overshoot inset-point regulating, it may not reduce it sufficiently under certaincircumstances, particularly where there is a large change in set-pointvelocity. To overcome this problem, a second modification containedwithin the box formed by the dot dash line 60 is used. In thisarrangement, the desired position θ_(d) is differentiated in 62 toprovide θ_(d) in line 64. This signal is further differentiated by 66 toprovide an acceleration value θ_(d) in line 68. The signals θ_(d) andθ_(d) are multiplied in multiplier 70 and the product and the sign ofthis multiplication is then delivered to the control 72 via line 74. Thecontrol 72 is an on/off type control, has 0 output if θ_(d) and θ_(d)are in the same direction, i.e. if the product of θ_(d) and θ_(d) isequal to or greater than 0, the controller 72 does not act and there isno output from the controller 72.

On the other hand, if the signal from the multiplier 70 is less than 0,then an output from controller 72 passes through the multiplier 76 andline 78 to the adder 34 (signal θ_(G)) to increase the signal θ_(e) andprovide a modified signal θ_(m) that is delivered to the adder 32. Theamount or signal added in adder 34, θ_(G), is proportional to theposition acceleration θ_(d), i.e. θ_(G) =K_(a) θ_(d) where K_(a) is ascaling factor.

This modification boosts the signal supplied to the adder 32 in anon/off manner without sudden control signal discontinuity and thus,enhances the deceleration of the system without sacrificing responsetime or stability (in the form of overshoot).

To compensate for actuator deadband due to hydraulic valve deadband oractuator stiction, the controller contained within the box indicated bythe dot dash line 80 is applied. A differentiator 82, similar to 62 (ormay use the signal from 62) to provide a position velocity signal θ_(d)in line 84 and deliver this to a second nonlinear function applicator86.

Also delivered to the nonlinear function applicator 86 via in line 90 isthe derivative of the actual position signal θ_(a), to provide theactual velocity signal θ_(a). The nonlinear function applicator 86 basedon the desired position velocity signal θ_(d) and the actual positionvelocity signal θ_(a) generates a signal herewith called stiction(stick-induced) velocity error signal θ_(e) ^(stiction) using thenonlinear function ##EQU6## where: β=a constant having a value ofbetween 5 and 500 for most heavy-duty hydraulic applications

The stick-induced velocity error θ_(e) ^(stiction) as above indicated isdue to friction at the manipulator joints or actual deadband in thehydraulic actuation system which may cause some positional static error.

For high values of β, the stick-induced velocity error function sharplydiscriminates between velocity error due to sticking and those due toother causes, i.e. the estimate is close to zero unless there is avelocity error at low actual velocities. In other words, the estimate islarge when the set-point is moving and the manipulator is not.

The constant β is selected with a high value in preferably the order ofabout 50 (which value was found to work well) since if β is very low,for example, if β is 0, then ##EQU7## and is in effect nothing butvelocity error signal. By choosing. β high the stick induced velocityerror will be well represented by the output signal θ_(e) ^(stiction).

This signal θ_(e) ^(stiction) is carded via a line 92 to the operationor functions 94 and 96. The operation or function 94 determines whetherthe signal θ_(e) ^(stiction) is between two limit values defined asθ_(e) ^(-set) and θ_(e) ^(+set). Depending whether or not the signalθ_(e) ^(stiction) is within these limits, the element 94 will generatean ON or an OFF signal to a logic timer block 98. If the signal θ_(e)^(stiction) is within the range, it will send an OFF signal; if outsidethe range opposite signal, an ON signal is sent to the logic timer 98.For practical purposes the range θ_(e) ^(-set) and θ_(e) ^(+set) willnormally be determined for each application. For heavy-duty hydraulicapplications, five encoder resolution-widths per second was found to beadequate.

The logic timer block 98 also receives a signal via line 100 indicatingthe output signal U in line 44.

The operation or function 96 determines whether the signal θ_(e)^(stiction) in line 92 is positive or negative depending on thedirection of movement required for the intended action and set with thevalues for the signals U_(L) and U_(U) which provide the signal formovement of the manipulator arm, i.e. signal U_(L) for movement in onedirection, and U_(U) for movement in the opposite direction.

The values for the signals U_(L), and U_(U) are preferably empiricallyderived and provide a signal of sufficient magnitude to ensure that theoutput signal from the system is sufficient to overcome stick induceddeadband in the system.

The block 98 receives signals from the block 94 on each time cycleiteration of the control. This block then checks first to see whetherthe stick induced velocity error is high (i.e. the signal from block 94to 98 is one) or not. Then it checks whether the total control signal Uin line 44 is greater than U_(L), or U_(U) and if it is not, the controlsignal U should be boosted promptly to either U_(L) or U_(U) dependingon the direction of motion. Thus, the block 98 signals the switch 58above described to connect to Terminals 2 and 3 and substitute thesignal θ_(S) in line 104 for the signal θ_(I) in line 56.

The signal θ_(S) in line 104 is derived from the signal U_(L) or U_(U)from which the signal U is subtracted in subtractor 106 and thenproportioned as indicated at 108 and the proportional signal multipliedby the incoming signal in multiplier 105 to provide the proportionsignal θ_(S) in line 104. This signal θ_(S) is used to input thecontroller 38 in place of the signal θ_(I).

The operation of the block 80 depends on whether θ_(e) ^(stiction) isbetween the range θ_(e).sup.±set or not. If it is, do nothing, i.e. theswitch 80 is disabled by sending a zero (0) to block 98. As soon asθ_(e) ^(stiction) goes beyond θ_(e).sup.±set range, i.e. there is asignificant stick-induced position error and the signal from 94 turns toone (1), telling the block 98 to boost the signal U to U_(L) or U_(U)(depending on the direction of movement). Now, to ensure U is U_(L)/U_(U) (let say U_(L)), U_(I) is boosted such that when added to Up, Ubecomes U_(L). To do that, U_(L) is compared with the current value ofU_(P) in subtractor 106 to see how much is lacking and this differenceis then proportioned at 108. If there is a lack (U_(L) -U_(P) >0), thenthe signal to 38 is reset as (U_(L) -U_(P))/K_(I) such that whenmultiplied by K_(I) on block 38 and then added to U_(P), U_(L) isproduced. In effect the signal θ_(I) (integral signal) has been reset toa new value. If there is no lack (i.e. U_(L) -U_(P) <0), then we knowU_(P) is high enough and the signal from 94 is reset to zero (0) byblock 98. Note that this is done in one time cycle. Thus, the functionof block 80 is to ensure that each time θ_(e) ^(stiction) goes beyondθ_(e).sup.±set, reset the signal θ_(I) to a suitable value by justclosing switch 58 to position 2-3 one cycle, then switch it back toposition 1-2 again.

By resetting θ_(I) at point 58 we do two things. First, U_(I) will setto U_(L) U_(U). Second, since connection 2→3 will go back to 2→1, weensure the θ_(I) is also updated at line 56 as well.

One immediate application of the invention can be towards computercontrol of heavy-duty industrial excavator-based machines. Inparticular, the invention is useful to handle environmentalinteractions. One way of controlling the manipulator interactions asseen from the environment is a position-based impedance control.

It will be apparent that the preferred form of the invention permitsimproved performance, particularly it permits

(i) improved tracking and regulating,

(ii) quick response to changes in set-point in spite of manynonidealities inherent with existing industrial hydraulic manipulators,described earlier,

(iii) quick reversal of direction without overshoot, and

(iv) accommodates both large and small changes in set-point.

Having described the invention, modifications will be evident to thoseskilled in the art without departing from the scope of the invention asdefined in the appended claims.

We claim:
 1. An improved position controller for a hydraulic manipulatorcomprising means for generating a position error signal (θ_(e)),proportional-derivative controller means to define a first controlsignal (U_(P), U_(PD)), means for determining a velocity factor F_(V)based on a derivative of said position error signal (θ_(e)) and anonlinear function, means for generating an improved position errorintegral signal (θ_(I)) based on the product of said position errorsignal and said velocity factor F_(V), means to provide an integralcontrol signal (U_(I)) based on said improved position error integralsignal (θ_(I)) and means for combining said integral control signal(U_(I)) with said first control signal (U_(P), U_(PD)) to provide anoutput control signal U to control said manipulator.
 2. An improvedposition controller for a hydraulic manipulator as defined in claim 1wherein said means for generating a positional error signal (θ_(e))comprises, means to input a desired position (θ_(d)), means to determinea then current actual position of said manipulator (θ_(a)), means forsubtracting said then current actual position of said manipulator(θ_(a)) from said desired position (θ_(d)), to provide said positionerror signal (θ_(e)).
 3. An improved controller for a hydraulicmanipulator as defined in claim 2 wherein said velocity factor will be##EQU8## where: α=constant having a value of ##EQU9## where: α_(max) =atleast 8000 deg.² /s² for most hydraulically-driven revolute arms, and 20m² /s² for most hydraulically-driven prismatic armsθ_(e) =velocity errorbase on the position error θ_(e) |θ_(d) |=absolute desired velocityθ_(max) =a maximum set-point for velocity and will be 10 deg./s for mostheavy duty hydraulic applications having revolute joints and 0.2 m/s formost heavy-duty hydraulic applications having prismatic joints.
 4. Animproved position controller for a hydraulic manipulator as defined inclaim 3 wherein said controller further includes means for determining astiction signal (θ_(e) ^(stiction)) based on a desired velocity θ_(d)derived from a derivative of said desired position (θ_(d)), means fordetermining whether said stiction signal (θ_(e) ^(stiction)) is within aselected range, and increasing the integral control signal U_(I) toensure the output control signal U is at least equal to U_(L) orU_(U),wherein U_(L) is an empirically set value for movement in onedirection of sufficient magnitude to ensure the output signal issufficient to overcome stick induced deadband in the system, and U_(U)is an empirically set value for movement in a direction opposite to saidone direction of sufficient magnitude to ensure the output signal issufficient to overcome stick induced deadband in the system.
 5. Animproved position controller for a hydraulic manipulator as defined inclaim 4 wherein said means for determining of said stiction signal(θ_(e) ^(stiction)) further includes means for determining thederivative of said current actual position (θ_(a)), to provide an actualvelocity error signal θ_(a) and means for determining said stictionsignal (θ_(e) ^(stiction)) based on the function ##EQU10## where: β=aconstant having a value of between 5 and 500 for most heavy-dutyhydraulic applications.
 6. An improved position controller for ahydraulic manipulator as defined in claim 2 further comprising means tomodify said position error signal (θ_(e)), means to compare directionsof first and second derivatives of said desired position (θ_(d)) andmeans to adjust the value of the position error signal (θ_(e)) modifiedonly when the first and second derivatives have different signs byadding a modifying signal (θ_(G)), proportional to desired acceleration,to the position error signal (θ_(e)) to provide a modified positionerror signal (θ_(m)) that is used to replace said position error signal(θ_(e)) in defining said integral control signal (U_(I)).
 7. An improvedposition controller for a hydraulic manipulator as defined in claim 2wherein said controller further includes means for determining astiction signal (θ_(e) ^(stiction)) based on a desired velocity θ_(d)derived from a derivative of said desired position (θ_(d)), means fordetermining whether said stiction signal (θ_(e) ^(stiction)) is within aselected range, and increasing the integral control signal U_(I) toensure the output control signal U is at least equal to U_(L) or U_(U).8. An improved position controller for a hydraulic manipulator asdefined in claim 7 wherein said means for determining of said stictionsignal (θ_(e) ^(stiction)) further includes means for determining thederivative of said current actual position (θ_(a)), to provide an actualvelocity error signal (θ_(a)) and means for determining said stictionsignal (θ_(e) ^(stiction)) based on the function ##EQU11## where: β=aconstant having a value of between 5 and 500 for most heavy-dutyhydraulic applications.
 9. An improved position controller for ahydraulic manipulator as defined in claim 1 wherein said velocity factorwill be ##EQU12## where: α=constant having a value of at least 8 deg²/s² for revolute joints and 0.02 m² /s² for prismatic joints.
 10. Animproved position controller for a hydraulic manipulator as defined inclaim 9 further comprising means to modify a position error signal(θ_(e)), means to compare directions of first and second derivatives ofa desired position (θ_(d)) and means to adjust the value of the positionerror signal (θ_(e)) modified only when the first and second derivativeshave different signs by adding a modifying signal (θ_(G)), proportionalto desired acceleration, to the position error signal (θ_(e)) to providea modified position error signal (θ_(m)) that is used to replace saidposition error signal (θ_(e)) in defining said integral control signal(U_(I)).
 11. An improved position controller for a hydraulic manipulatoras defined m claim 1 further comprising means to modify a position errorsignal (θ_(e)), means to compare directions of first and secondderivatives of a desired position (θ_(d)) and means to adjust the valueof the position error signal (θ_(e)) modified only when the first andsecond derivatives have different signs by adding a modifying signal(θ_(G)), proportional to desired acceleration, to the position errorsignal (θ_(e)) to provide a modified position error signal (θ_(m)) thatis used to replace said position error signal (θ_(e)) in defining saidintegral control signal (U_(I)).
 12. A method of controlling a hydraulicmanipulator comprising defining a position error signal (θ_(e)),defining a first control signal (U_(P), U_(PD)) based on said positionerror signal θ_(e) and derivative of it, generating an improved positionerror integral signal (θ_(I)) base on a product of said position errorsignal and a velocity factor F_(V), said velocity factor F_(V) beingbased on a derivative of said position error signal (θ_(e)) and anonlinear function, providing integral control signal (U_(I)) based onsaid improved position error integral signal (θ_(I)) and combining saidintegral control signal (U_(I)) with said first control signal (U_(P),U_(PD)) to provide an output control signal U to control saidmanipulator.
 13. A method as defined in claim 12 wherein said defining aposition error signal (θ_(e)) comprises, inputting a desired position(θ_(d)), determining a then current actual position of said manipulator(θ_(a)), subtracting said then current actual position of saidmanipulator (θ_(a)) from said desired position (θ_(d)), to provide saidposition error signal (θ_(e)).
 14. A method as defined in claim 13wherein said velocity factor will be ##EQU13## where: α=a constanthaving a value of at least 8 deg² /s² for revolute joints and 0.02 m²/s² for prismatic joints.
 15. A method as defined in claim 14 furthercomprising modifying said position error signal (θ_(e)) by determiningfirst and second derivatives of said desired position (θ_(d)), comparingdirections of said first and second derivatives and adjusting the valueof said position error signal (θ_(e)) only when the first and secondderivatives have different signs by adding a modifying signal (θ_(G)),proportional to desired accelerations to the position error signal(θ_(e)) to provide a modified position error signal (θ_(m)) to be usedto replace said position error signal (θ_(e)) in defining said integralcontrol signal (U_(I)).
 16. A method as defined in claim 15 whereinfurther including determining a stiction signal (θ_(e) ^(stiction))based on a desired velocity θ_(d) derived from a derivative of saiddesired position (θ_(d)), determining whether said stiction signal(θ_(e) ^(stiction)) is within a selected range, and increasing saidintegral control signal U_(I) to ensure the output control signal U isat least equal to U_(L) or U_(U),wherein: U_(L) is an empirically setvalue for movement in one direction of sufficient magnitude to ensurethe output signal is sufficient to overcome stick induced deadband inthe system, and U_(U) is an empirically set value for movement in adirection opposite to said one direction of sufficient magnitude toensure the output signal is sufficient to overcome stick induceddeadband in the system.
 17. A method as defined in claim 16 wherein saiddetermining of said stiction signal (θ_(e) ^(stiction)) further includesdetermining the derivative of said current actual position (θ_(a)), toprovide an actual velocity error signal θ_(a) and determining saidstiction signal (θ_(e) ^(stiction)) based on the function ##EQU14##where: β=a constant having a value of between 5 and 500 for mostheavy-duty hydraulic functions.
 18. A method as defined in claim 12wherein said velocity factor will be ##EQU15## where: α=constant havinga value of ##EQU16## where: α_(max) =at least 8000 deg.² /s² for mosthydraulically-driven revolute arms, and 20 m² /s² for mosthydraulically-driven prismatic armsθ_(e) =velocity error base on theposition error θ_(e) |θ_(d) |=absolute desired velocity θ_(max) =amaximum set-point for velocity and will be 10 deg./s for most heavy dutyhydraulic applications having revolute joints and 0.2 m/s for mostheavy-duty hydraulic applications having prismatic joints.
 19. A methodas defined in claim 18 further comprising modifying said position errorsignal (θ_(e)) by determining first and second derivatives of a desiredposition (θ_(d)), comparing directions of said first and secondderivatives and adjusting the value of said position error signal(θ_(e)) only when the first and second derivatives have different signsby adding a modifying signal (θ_(G)), proportional to desiredaccelerations to the position error signal (θ_(e)) to provide a modifiedposition error signal (θ_(m)) to be used to replace said position errorsignal (θ_(e)) in defining said integral control signal (U_(I)).
 20. Amethod as defined in claim 19 wherein further including determining astiction signal (θ_(e) ^(stiction)) based on a desired velocity θ_(d)derived from a derivative of said desired position (θ_(d)), determiningwhether said stiction signal (θ_(e) ^(stiction)) is within a selectedrange, and increasing the integral control signal U_(I) to ensure theoutput control signal U is at least equal to U_(L) or U_(U),wherein:U_(L) is an empirically set value for movement in one direction ofsufficient magnitude to ensure the output signal is sufficient toovercome stick induced deadband in the system, and U_(U) is anempirically set value for movement in a direction opposite to said onedirection of sufficient magnitude to ensure the output signal issufficient to overcome stick induced deadband in the system.